<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <title>Hoodoo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="stylesheet" href="../css/reset.css" type="text/css" media="screen" />
<link rel="stylesheet" href="../css/main.css" type="text/css" media="screen" />
<link rel="stylesheet" href="../css/github.css" type="text/css" media="screen" />
<script src="../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/main.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>

</head>

<body>
    <div class="banner">
        <h1>
            <span class="type">Module</span>
            Hoodoo
        </h1>
        <ul class="files">
            <li><a href="../files/lib/hoodoo_rb.html">lib/hoodoo.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_model/uuid_validator_rb.html">lib/hoodoo/active/active_model/uuid_validator.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/base_rb.html">lib/hoodoo/active/active_record/base.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/creator_rb.html">lib/hoodoo/active/active_record/creator.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/dated_rb.html">lib/hoodoo/active/active_record/dated.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/error_mapping_rb.html">lib/hoodoo/active/active_record/error_mapping.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/finder_rb.html">lib/hoodoo/active/active_record/finder.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/manually_dated_rb.html">lib/hoodoo/active/active_record/manually_dated.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/search_helper_rb.html">lib/hoodoo/active/active_record/search_helper.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/secure_rb.html">lib/hoodoo/active/active_record/secure.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/support_rb.html">lib/hoodoo/active/active_record/support.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/translated_rb.html">lib/hoodoo/active/active_record/translated.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/uuid_rb.html">lib/hoodoo/active/active_record/uuid.rb</a></li>
            <li><a href="../files/lib/hoodoo/active/active_record/writer_rb.html">lib/hoodoo/active/active_record/writer.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/augmented_array_rb.html">lib/hoodoo/client/augmented_array.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/augmented_base_rb.html">lib/hoodoo/client/augmented_base.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/augmented_hash_rb.html">lib/hoodoo/client/augmented_hash.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/client_rb.html">lib/hoodoo/client/client.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/endpoint/endpoint_rb.html">lib/hoodoo/client/endpoint/endpoint.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/endpoint/endpoints/amqp_rb.html">lib/hoodoo/client/endpoint/endpoints/amqp.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/endpoint/endpoints/auto_session_rb.html">lib/hoodoo/client/endpoint/endpoints/auto_session.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/endpoint/endpoints/http_rb.html">lib/hoodoo/client/endpoint/endpoints/http.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/endpoint/endpoints/http_based_rb.html">lib/hoodoo/client/endpoint/endpoints/http_based.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/endpoint/endpoints/not_found_rb.html">lib/hoodoo/client/endpoint/endpoints/not_found.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/headers_rb.html">lib/hoodoo/client/headers.rb</a></li>
            <li><a href="../files/lib/hoodoo/client/paginated_enumeration_rb.html">lib/hoodoo/client/paginated_enumeration.rb</a></li>
            <li><a href="../files/lib/hoodoo/communicators_rb.html">lib/hoodoo/communicators.rb</a></li>
            <li><a href="../files/lib/hoodoo/communicators/fast_rb.html">lib/hoodoo/communicators/fast.rb</a></li>
            <li><a href="../files/lib/hoodoo/communicators/pool_rb.html">lib/hoodoo/communicators/pool.rb</a></li>
            <li><a href="../files/lib/hoodoo/communicators/slow_rb.html">lib/hoodoo/communicators/slow.rb</a></li>
            <li><a href="../files/lib/hoodoo/data_rb.html">lib/hoodoo/data.rb</a></li>
            <li><a href="../files/lib/hoodoo/data/resources/caller_rb.html">lib/hoodoo/data/resources/caller.rb</a></li>
            <li><a href="../files/lib/hoodoo/data/resources/errors_rb.html">lib/hoodoo/data/resources/errors.rb</a></li>
            <li><a href="../files/lib/hoodoo/data/resources/log_rb.html">lib/hoodoo/data/resources/log.rb</a></li>
            <li><a href="../files/lib/hoodoo/data/resources/session_rb.html">lib/hoodoo/data/resources/session.rb</a></li>
            <li><a href="../files/lib/hoodoo/data/types/error_primitive_rb.html">lib/hoodoo/data/types/error_primitive.rb</a></li>
            <li><a href="../files/lib/hoodoo/data/types/permissions_rb.html">lib/hoodoo/data/types/permissions.rb</a></li>
            <li><a href="../files/lib/hoodoo/data/types/permissions_defaults_rb.html">lib/hoodoo/data/types/permissions_defaults.rb</a></li>
            <li><a href="../files/lib/hoodoo/data/types/permissions_full_rb.html">lib/hoodoo/data/types/permissions_full.rb</a></li>
            <li><a href="../files/lib/hoodoo/data/types/permissions_resources_rb.html">lib/hoodoo/data/types/permissions_resources.rb</a></li>
            <li><a href="../files/lib/hoodoo/errors/error_descriptions_rb.html">lib/hoodoo/errors/error_descriptions.rb</a></li>
            <li><a href="../files/lib/hoodoo/errors/errors_rb.html">lib/hoodoo/errors/errors.rb</a></li>
            <li><a href="../files/lib/hoodoo/generator_rb.html">lib/hoodoo/generator.rb</a></li>
            <li><a href="../files/lib/hoodoo/logger/fast_writer_rb.html">lib/hoodoo/logger/fast_writer.rb</a></li>
            <li><a href="../files/lib/hoodoo/logger/flattener_mixin_rb.html">lib/hoodoo/logger/flattener_mixin.rb</a></li>
            <li><a href="../files/lib/hoodoo/logger/logger_rb.html">lib/hoodoo/logger/logger.rb</a></li>
            <li><a href="../files/lib/hoodoo/logger/slow_writer_rb.html">lib/hoodoo/logger/slow_writer.rb</a></li>
            <li><a href="../files/lib/hoodoo/logger/writer_mixin_rb.html">lib/hoodoo/logger/writer_mixin.rb</a></li>
            <li><a href="../files/lib/hoodoo/logger/writers/file_writer_rb.html">lib/hoodoo/logger/writers/file_writer.rb</a></li>
            <li><a href="../files/lib/hoodoo/logger/writers/log_entries_dot_com_writer_rb.html">lib/hoodoo/logger/writers/log_entries_dot_com_writer.rb</a></li>
            <li><a href="../files/lib/hoodoo/logger/writers/stream_writer_rb.html">lib/hoodoo/logger/writers/stream_writer.rb</a></li>
            <li><a href="../files/lib/hoodoo/monkey/monkey_rb.html">lib/hoodoo/monkey/monkey.rb</a></li>
            <li><a href="../files/lib/hoodoo/monkey/patch/newrelic_middleware_analytics_rb.html">lib/hoodoo/monkey/patch/newrelic_middleware_analytics.rb</a></li>
            <li><a href="../files/lib/hoodoo/monkey/patch/newrelic_traced_amqp_rb.html">lib/hoodoo/monkey/patch/newrelic_traced_amqp.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters_rb.html">lib/hoodoo/presenters.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/base_rb.html">lib/hoodoo/presenters/base.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/base_dsl_rb.html">lib/hoodoo/presenters/base_dsl.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/common_resource_fields_rb.html">lib/hoodoo/presenters/common_resource_fields.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/embedding_rb.html">lib/hoodoo/presenters/embedding.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/array_rb.html">lib/hoodoo/presenters/types/array.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/boolean_rb.html">lib/hoodoo/presenters/types/boolean.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/date_rb.html">lib/hoodoo/presenters/types/date.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/date_time_rb.html">lib/hoodoo/presenters/types/date_time.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/decimal_rb.html">lib/hoodoo/presenters/types/decimal.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/enum_rb.html">lib/hoodoo/presenters/types/enum.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/field_rb.html">lib/hoodoo/presenters/types/field.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/float_rb.html">lib/hoodoo/presenters/types/float.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/hash_rb.html">lib/hoodoo/presenters/types/hash.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/integer_rb.html">lib/hoodoo/presenters/types/integer.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/object_rb.html">lib/hoodoo/presenters/types/object.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/string_rb.html">lib/hoodoo/presenters/types/string.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/tags_rb.html">lib/hoodoo/presenters/types/tags.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/text_rb.html">lib/hoodoo/presenters/types/text.rb</a></li>
            <li><a href="../files/lib/hoodoo/presenters/types/uuid_rb.html">lib/hoodoo/presenters/types/uuid.rb</a></li>
            <li><a href="../files/lib/hoodoo/services_rb.html">lib/hoodoo/services.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/discoverers/by_convention_rb.html">lib/hoodoo/services/discovery/discoverers/by_convention.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/discoverers/by_drb/by_drb_rb.html">lib/hoodoo/services/discovery/discoverers/by_drb/by_drb.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/discoverers/by_drb/drb_server_rb.html">lib/hoodoo/services/discovery/discoverers/by_drb/drb_server.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/discoverers/by_drb/drb_server_start_rb.html">lib/hoodoo/services/discovery/discoverers/by_drb/drb_server_start.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/discoverers/by_flux_rb.html">lib/hoodoo/services/discovery/discoverers/by_flux.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/discovery_rb.html">lib/hoodoo/services/discovery/discovery.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/results/for_amqp_rb.html">lib/hoodoo/services/discovery/results/for_amqp.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/results/for_http_rb.html">lib/hoodoo/services/discovery/results/for_http.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/results/for_local_rb.html">lib/hoodoo/services/discovery/results/for_local.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/discovery/results/for_remote_rb.html">lib/hoodoo/services/discovery/results/for_remote.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/amqp_log_writer_rb.html">lib/hoodoo/services/middleware/amqp_log_writer.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/endpoints/inter_resource_local_rb.html">lib/hoodoo/services/middleware/endpoints/inter_resource_local.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/endpoints/inter_resource_remote_rb.html">lib/hoodoo/services/middleware/endpoints/inter_resource_remote.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/exception_reporting/base_reporter_rb.html">lib/hoodoo/services/middleware/exception_reporting/base_reporter.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/exception_reporting/exception_reporting_rb.html">lib/hoodoo/services/middleware/exception_reporting/exception_reporting.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/exception_reporting/reporters/airbrake_reporter_rb.html">lib/hoodoo/services/middleware/exception_reporting/reporters/airbrake_reporter.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/exception_reporting/reporters/raygun_reporter_rb.html">lib/hoodoo/services/middleware/exception_reporting/reporters/raygun_reporter.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/interaction_rb.html">lib/hoodoo/services/middleware/interaction.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/middleware_rb.html">lib/hoodoo/services/middleware/middleware.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/middleware/rack_monkey_patch_rb.html">lib/hoodoo/services/middleware/rack_monkey_patch.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/services/context_rb.html">lib/hoodoo/services/services/context.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/services/implementation_rb.html">lib/hoodoo/services/services/implementation.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/services/interface_rb.html">lib/hoodoo/services/services/interface.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/services/permissions_rb.html">lib/hoodoo/services/services/permissions.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/services/request_rb.html">lib/hoodoo/services/services/request.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/services/response_rb.html">lib/hoodoo/services/services/response.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/services/service_rb.html">lib/hoodoo/services/services/service.rb</a></li>
            <li><a href="../files/lib/hoodoo/services/services/session_rb.html">lib/hoodoo/services/services/session.rb</a></li>
            <li><a href="../files/lib/hoodoo/utilities/string_inquirer_rb.html">lib/hoodoo/utilities/string_inquirer.rb</a></li>
            <li><a href="../files/lib/hoodoo/utilities/utilities_rb.html">lib/hoodoo/utilities/utilities.rb</a></li>
            <li><a href="../files/lib/hoodoo/utilities/uuid_rb.html">lib/hoodoo/utilities/uuid.rb</a></li>
            <li><a href="../files/lib/hoodoo/version_rb.html">lib/hoodoo/version.rb</a></li>
        </ul>
    </div>
    <div id="bodyContent">
        <div id="content">
    <div class="description">
      
<p>Module used as a namespace for all of Hoodoo&#39;s facilities.</p>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>uuid_validator.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p><a href="Hoodoo/UUID.html">UUID</a> validator for models.</p>
</dd></dl>
<hr>

<pre><code>26-Nov-2014 (RJS): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>base.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Include all mixins.</p>
</dd></dl>
<hr>

<pre><code>25-Nov-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>creator.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Support mixin for models subclassed from <a
href="Hoodoo/ActiveRecord/Base.html">ActiveRecord::Base</a> providing
context-aware model instance creation, allowing service authors to
auto-inherit related features from <a href="Hoodoo.html">Hoodoo</a> without
changing their code.</p>
</dd></dl>
<hr>

<pre><code>07-Dec-2015 (ADH): Created as a proper place for &quot;new_in&quot;,
                   which had historically and confusingly
                   resided inside the Finder mixin.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>dated.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Support mixin for models subclassed from <a
href="Hoodoo/ActiveRecord/Base.html">ActiveRecord::Base</a> providing
as-per-API-standard dating support.</p>
</dd></dl>
<hr>

<pre><code>14-Jul-2015 (ADH): Created.
21-Jul-2015 (RJS): Functionality implemented.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>error_mapping.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Support mixin for models subclassed from <a
href="Hoodoo/ActiveRecord/Base.html">ActiveRecord::Base</a> providing a
mapping between API level errors and model validation errors.</p>
</dd></dl>
<hr>

<pre><code>17-Nov-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>manually_dated.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Support mixin for models subclassed from <a
href="Hoodoo/ActiveRecord/Base.html">ActiveRecord::Base</a> providing
as-per-API-standard dating support.</p>
</dd></dl>
<hr>

<pre><code>14-Jul-2015 (ADH): Created.
21-Jul-2015 (RJS): Functionality implemented.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>search_helper.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Supplementary helper class included by “finder.rb”. See <a
href="Hoodoo/ActiveRecord/Finder.html">Hoodoo::ActiveRecord::Finder</a>,
especially Hoodoo::ActiveRecord::Finder#search_with, for details.</p>
</dd></dl>
<hr>

<pre><code>09-Jul-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>secure.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Support mixin for models subclassed from <a
href="Hoodoo/ActiveRecord/Base.html">ActiveRecord::Base</a> providing
enhanced find mechanisms for <code>show</code> and <code>list</code> action
handling.</p>
</dd></dl>
<hr>

<pre><code>25-Nov-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>support.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>This file includes a support class that is basically a public, independent
expression of a series of specialised methods that would otherwise have
been private, were it not for them being called by mixin code. See <a
href="Hoodoo/ActiveRecord/Support.html">Hoodoo::ActiveRecord::Support</a>
documentation for details.</p>
</dd></dl>
<hr>

<pre><code>14-Jul-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>translated.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Support mixin for models subclassed from <a
href="Hoodoo/ActiveRecord/Base.html">ActiveRecord::Base</a> providing
as-per-API-standard internationalisation support.</p>
</dd></dl>
<hr>

<pre><code>14-Jul-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>uuid.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Support mixin for models subclassed from <a
href="Hoodoo/ActiveRecord/Base.html">ActiveRecord::Base</a> providing <a
href="Hoodoo/UUID.html">UUID</a> management.</p>
</dd></dl>
<hr>

<pre><code>17-Nov-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>writer.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Support mixin for models subclassed from <a
href="Hoodoo/ActiveRecord/Base.html">ActiveRecord::Base</a> providing
context-aware data writing, allowing service authors to auto-inherit
persistence-related features from <a href="Hoodoo.html">Hoodoo</a> without
changing their code.</p>
</dd></dl>
<hr>

<pre><code>31-Aug-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>augmented_array.rb.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>A subclass of Ruby standard library Array used by the <a
href="Hoodoo/Client/Endpoint.html">Hoodoo::Client::Endpoint</a> family.</p>
</dd></dl>
<hr>

<pre><code>11-Dec-2014 (ADH): Created.
05-Mar-2015 (ADH): Moved to Hoodoo::Client.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>augmented_array.rb.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>A subclass of Ruby standard library Array used by the <a
href="Hoodoo/Client/Endpoint.html">Hoodoo::Client::Endpoint</a> family.</p>
</dd></dl>
<hr>

<pre><code>11-Dec-2014 (ADH): Created.
05-Mar-2015 (ADH): Moved to Hoodoo::Client.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>augmented_array.rb.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>A subclass of Ruby standard library Array used by the <a
href="Hoodoo/Client/Endpoint.html">Hoodoo::Client::Endpoint</a> family.</p>
</dd></dl>
<hr>

<pre><code>11-Dec-2014 (ADH): Created.
05-Mar-2015 (ADH): Moved to Hoodoo::Client.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>endpoint.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Resource endpoint definition.</p>
</dd></dl>
<hr>

<pre><code>05-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>amqp.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Resource endpoint definition.</p>
</dd></dl>
<hr>

<pre><code>05-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>auto_session.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Resource endpoint definition.</p>
</dd></dl>
<hr>

<pre><code>12-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>headers.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>If you can&#39;t think of where some code should live, use a Class or
Module as a namespace for what amounts to library routines. The class
defined here has support data and code for <a
href="Hoodoo/Client.html">Hoodoo::Client</a>, <a
href="Hoodoo/Services/Middleware.html">Hoodoo::Services::Middleware</a> and
others.</p>
</dd></dl>
<hr>

<pre><code>22-Sep-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>paginated_enumeration.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2016</p>
</dd><dt>Purpose
<dd>
<p>A module that adds support for enumeration over paginated resources.</p>
</dd></dl>
<hr>

<pre><code>29-Sep-2016 (DJO): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>communicators.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Include the code providing a pool of fast or slow workers that communicate
with the outside world.</p>
</dd></dl>
<hr>

<pre><code>26-Jan-2015 (ADH): Split from top-level inclusion file.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>fast.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>A fast communication-orientated object intended to be called synchronously
via <a
href="Hoodoo/Communicators/Pool.html">Hoodoo::Communicators::Pool</a>.</p>
</dd></dl>
<hr>

<pre><code>15-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>pool.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>A pool of communication-orientated objects which are either fast and
operate synchronously, or are slow and are called asynchronously via a Ruby
Thread.</p>
</dd></dl>
<hr>

<pre><code>15-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>s;pw.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>A slow communication-orientated object intended to be called asynchronously
via <a
href="Hoodoo/Communicators/Pool.html">Hoodoo::Communicators::Pool</a>.</p>
</dd></dl>
<hr>

<pre><code>15-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>data.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Include common Type and Resource definitions.</p>
</dd></dl>
<hr>

<pre><code>26-Jan-2015 (ADH): Split from top-level inclusion file.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>caller.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Define documented Platform API Resource &#39;Caller&#39;.</p>
</dd></dl>
<hr>

<pre><code>30-Jan-2015 (RJS): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>errors.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Define documented Platform API Resource &#39;Errors&#39;.</p>
</dd></dl>
<hr>

<pre><code>23-Sep-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>log.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Define documented Platform API Resource &#39;Log&#39;.</p>
</dd></dl>
<hr>

<pre><code>25-Nov-2014 (ADH): Created.
01-Dec-2014 (ADH): Renamed resource from LogEntry to Log.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>session.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Define documented Platform API Resource &#39;Session&#39;.</p>
</dd></dl>
<hr>

<pre><code>30-Jan-2015 (RJS): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>error_primitive.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Define documented Platform API Type &#39;ErrorPrimitive&#39;.</p>
</dd></dl>
<hr>

<pre><code>22-Sep-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>permissions_full.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Define utility Type &#39;PermissionsFull&#39;.</p>
</dd></dl>
<hr>

<pre><code>02-Feb-2015 (RJS): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>permissions_resources.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Define documented Platform API Type &#39;PermissionsResources&#39;.</p>
</dd></dl>
<hr>

<pre><code>30-Jan-2015 (RJS): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>error_descriptions.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Error descriptions - provide a DSL and a container for a list of known
error codes and associated data. Defines a platform API&#39;s
<code>platform</code> and <code>generic</code> domain codes by default. <a
href="Hoodoo/Services.html">Services</a> can declare additional errors.</p>
</dd></dl>
<hr>

<pre><code>22-Sep-2014 (ADH): Created.
09-Oct-2014 (ADH): Updated for Preview Release 8.
16-Oct-2014 (TC):  Added session error</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>errors.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>A collection of error messages, starting empty, with one or more messages
added to it as errors are encountered by some processing task. <a
href="Hoodoo/Errors.html">Errors</a> are added according to codes described
by <a href="Hoodoo/ErrorDescriptions.html">Hoodoo::ErrorDescriptions</a>
instances.</p>
</dd></dl>
<hr>

<pre><code>22-Sep-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>fast_writer.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Base class for fast log writers.</p>
</dd></dl>
<hr>

<pre><code>16-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>logger.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Multiple output logging via local code or external services.</p>
</dd></dl>
<hr>

<pre><code>16-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>slow_writer.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Base class for slow log writers.</p>
</dd></dl>
<hr>

<pre><code>16-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>writer_mixin.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Common code for fast and slow log writer base classes.</p>
</dd></dl>
<hr>

<pre><code>16-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>file_writer.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Write flat log messages to a file.</p>
</dd></dl>
<hr>

<pre><code>16-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>file_writer.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Write flat log messages to an I/O stream - STDOUT by default.</p>
</dd></dl>
<hr>

<pre><code>16-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>monkey.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2016</p>
</dd><dt>Purpose
<dd>
<p>Official, reversible monkey patching.</p>
</dd></dl>
<hr>

<pre><code>11-Apr-2016 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>newrelic_traced_amqp.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Extend the AMQP endpoint to support NewRelic cross-app transaction tracing.
Only defined and registered if the NewRelic gem is available and Hoodooo <a
href="Hoodoo/Client.html">Client</a> is in scope.</p>

<p>See <a
href="Hoodoo/Monkey/Patch/NewRelicTracedAMQP.html">Hoodoo::Monkey::Patch::NewRelicTracedAMQP</a>
for more.</p>
</dd></dl>
<hr>

<pre><code>08-Apr-2016 (RJS): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>presenters.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Include the schema based data validation and rendering code.</p>
</dd></dl>
<hr>

<pre><code>26-Jan-2015 (ADH): Split from top-level inclusion file.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>base_presenter.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Schema-based data rendering and validation.</p>
</dd></dl>
<hr>

<pre><code>02-Dec-2014 (ADH): Merge of DocumentedPresenter code into
                   Base.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>base_dsl.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Implement a DSL used to define a schema for data rendering and validation.</p>
</dd></dl>
<hr>

<pre><code>02-Dec-2014 (ADH): Merge of DocumentedDSL code into BaseDSL.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>common_resource_fields.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Define a schema describing fields common to any schema that describes an
API Resource.</p>
</dd></dl>
<hr>

<pre><code>02-Dec-2014 (ADH): Split from DocumentedPresenter.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>embedding.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Light weight, simple support for basic embed and reference operations that
help reduce service reliance on “knowing” exactly how to structure such
data / avoid inconsistency.</p>
</dd></dl>
<hr>

<pre><code>29-Apr-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>tags.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p><a href="Hoodoo/Presenters/BaseDSL.html">Hoodoo::Presenters::BaseDSL</a>
field implementation which supports a field defined to contain a string of
comma separated tags.</p>
</dd></dl>
<hr>

<pre><code>30-Sep-2014 (ADH): Created.
31-Oct-2014 (ADH): Moved to generic presenter layer from
                   documented data layer.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>documented_uuid.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p><a href="Hoodoo/Presenters/BaseDSL.html">Hoodoo::Presenters::BaseDSL</a>
field implementation which supports a field defined to contain a <a
href="Hoodoo/UUID.html">UUID</a> that (optionally) can be verified as
referring to a specific other Resource.</p>
</dd></dl>
<hr>

<pre><code>22-Sep-2014 (ADH): Created.
31-Oct-2014 (ADH): Moved to generic presenter layer from
                   documented data layer.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>services.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Include code useful to client service applications.</p>
</dd></dl>
<hr>

<pre><code>26-Jan-2015 (ADH): Split from top-level inclusion file.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>by_convention.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Discover - after a fashion - resource endpoint locations by convention,
based on Rails-like pluralisation rules. For HTTP-based endpoints. Requires
ActiveSupport.</p>
</dd></dl>
<hr>

<pre><code>03-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>by_flux.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Discover resource endpoint locations via Alchemy Flux.</p>
</dd></dl>
<hr>

<pre><code>03-Mar-2015 (ADH): Created.
21-Jan-2016 (ADH): Reimplemented for Alchemy Flux.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>discovery.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Support resource endpoint discovery.</p>
</dd></dl>
<hr>

<pre><code>03-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>for_amqp.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Describe a resource endpoint location in a way that allows it to be
contacted over AMQP (e.g. via Alchemy).</p>
</dd></dl>
<hr>

<pre><code>03-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>for_http.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Describe a resource endpoint location in a way that allows it to be
contacted over HTTP.</p>
</dd></dl>
<hr>

<pre><code>03-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>for_local.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Describe a resource endpoint location in a way that allows it to be
method-called from the service middleware directly.</p>
</dd></dl>
<hr>

<pre><code>10-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>for_remote.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Describe a “pseudo” resource endpoint location in terms of an interation
context and wrapped “real” endpoint instance.</p>
</dd></dl>
<hr>

<pre><code>10-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>amqp_log_writer.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Structured logging support for the middleware.</p>
</dd></dl>
<hr>

<pre><code>20-Nov-2014 (ADH): Created.
16-Dec-2014 (ADH): Changed into a new Hoodoo::Logger style
                   instantiable log writer.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>inter_resource_local.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>An endpoint that calls back into a known middleware instance to communicate
with a resource that is available in the local service application.</p>
</dd></dl>
<hr>

<pre><code>11-Nov-2014 (ADH): Split out from service_middleware.rb
09-Mar-2015 (ADH): Adapted from old endpoint.rb code.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>inter_resource_remote.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Resource endpoint definition.</p>
</dd></dl>
<hr>

<pre><code>05-Mar-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>exception_reporting.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Reporting exceptions to third party error management services.</p>
</dd></dl>
<hr>

<pre><code>08-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>airbrake_reporter.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Send exception details to Airbrake.</p>
</dd></dl>
<hr>

<pre><code>08-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>raygun_reporter.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Send exception details to Raygun.</p>
</dd></dl>
<hr>

<pre><code>08-Dec-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>interaction.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Encapsulate all data related to an interaction (API call) inside an object.</p>
</dd></dl>
<hr>

<pre><code>13-Feb-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>context.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Container for information about the context of a call to a service,
including session, request and response.</p>
</dd></dl>
<hr>

<pre><code>03-Oct-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>implementation.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Service authors create subclasses of <a
href="Hoodoo/Services/Service.html">Hoodoo::Services::Service</a>, which
lists the one or more subclasses of <a
href="Hoodoo/Services/Interface.html">Hoodoo::Services::Interface</a> the
service author writes; each of those declares an interface which refers,
for each interface endpoint, to a subclass of the class described here.
Service authors create the body of their service implementation within the
subclass.</p>

<p>This file, then, does very little beyond describing the method framework
that service authors use.</p>
</dd></dl>
<hr>

<pre><code>24-Sep-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>permissions.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Allow/ask/deny support for resources and actions.</p>
</dd></dl>
<hr>

<pre><code>26-Jan-2015 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>request.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>A high level description of a client&#39;s request, with all of the “raw”
<a href="Rack.html">Rack</a> request data parsed, verified as far as
possible and generally cleaned up. Instances of this class are given to <a
href="Hoodoo/Services/Implementation.html">Hoodoo::Services::Implementation</a>
methods for each new request.</p>
</dd></dl>
<hr>

<pre><code>24-Sep-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>service.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2014</p>
</dd><dt>Purpose
<dd>
<p>Define a class that service authors subclass and use to declare the
component interfaces within the service via a very small DSL.</p>

<p>This class is passed to <a href="Rack.html">Rack</a> and treated like an
endpoint <a href="Rack.html">Rack</a> application, though the service
middleware in practice does not pass on calls using the <a
href="Rack.html">Rack</a> interface; it uses the custom calls exposed by <a
href="Hoodoo/Services/Implementation.html">Hoodoo::Services::Implementation</a>.
Rack&#39;s involvement between the two is really limited to just passing an
instance of the service application subclass to the middleware so it knows
who to “talk to”.</p>
</dd></dl>
<hr>

<pre><code>23-Sep-2014 (ADH): Created.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>string_inquirer.rb</p>
</dd><dt>Purpose
<dd>
<p><a href="Hoodoo/StringInquirer.html">StringInquirer</a> class copied from
ActiveSupport 4.1.6, to avoid dragging in that huge dependency for this one
thing.</p>
</dd></dl>
<hr>

<pre><code>02-Oct-2014 (ADH): Copied from ActiveSupport 4.1.6.</code></pre>
<dl class="rdoc-list note-list"><dt>File
<dd>
<p>version.rb</p>
</dd><dt>(C)
<dd>
<p>Loyalty New Zealand 2015</p>
</dd><dt>Purpose
<dd>
<p>Declare this gem&#39;s version number.</p>
</dd></dl>
<hr>

<pre><code>27-Jan-2015 (ADH): Created (for gem under name Hoodoo).</code></pre>

    </div>






    <!-- Namespace -->
    <div class="sectiontitle">Namespace</div>
    <ul>
        <li>
          <span class="type">MODULE</span>
          <a href="Hoodoo/ActiveRecord.html">Hoodoo::ActiveRecord</a>
        </li>
        <li>
          <span class="type">MODULE</span>
          <a href="Hoodoo/Communicators.html">Hoodoo::Communicators</a>
        </li>
        <li>
          <span class="type">MODULE</span>
          <a href="Hoodoo/Data.html">Hoodoo::Data</a>
        </li>
        <li>
          <span class="type">MODULE</span>
          <a href="Hoodoo/Monkey.html">Hoodoo::Monkey</a>
        </li>
        <li>
          <span class="type">MODULE</span>
          <a href="Hoodoo/Presenters.html">Hoodoo::Presenters</a>
        </li>
        <li>
          <span class="type">MODULE</span>
          <a href="Hoodoo/Services.html">Hoodoo::Services</a>
        </li>
        <li>
          <span class="type">MODULE</span>
          <a href="Hoodoo/Utilities.html">Hoodoo::Utilities</a>
        </li>
        <li>
          <span class="type">CLASS</span>
          <a href="Hoodoo/Client.html">Hoodoo::Client</a>
        </li>
        <li>
          <span class="type">CLASS</span>
          <a href="Hoodoo/ErrorDescriptions.html">Hoodoo::ErrorDescriptions</a>
        </li>
        <li>
          <span class="type">CLASS</span>
          <a href="Hoodoo/Errors.html">Hoodoo::Errors</a>
        </li>
        <li>
          <span class="type">CLASS</span>
          <a href="Hoodoo/Generator.html">Hoodoo::Generator</a>
        </li>
        <li>
          <span class="type">CLASS</span>
          <a href="Hoodoo/Logger.html">Hoodoo::Logger</a>
        </li>
        <li>
          <span class="type">CLASS</span>
          <a href="Hoodoo/StringInquirer.html">Hoodoo::StringInquirer</a>
        </li>
        <li>
          <span class="type">CLASS</span>
          <a href="Hoodoo/UUID.html">Hoodoo::UUID</a>
        </li>
    </ul>









      <!-- Section constants -->
      <div class="sectiontitle">Constants</div>
      <table border='0' cellpadding='5'>
          <tr valign='top' id='VERSION'>
            <td class="attr-name">VERSION</td>
            <td>=</td>
            <td class="attr-value"><pre>&#39;1.11.0&#39;</pre></td>
          </tr>
            <tr valign='top'>
              <td>&nbsp;</td>
              <td colspan="2" class="attr-desc"><p>The <a href="Hoodoo.html">Hoodoo</a> gem version. If this changes, ensure
that the date in “hoodoo.gemspec” is correct and run “bundle install” (or
“update”).</p></td>
            </tr>
      </table>



    <!-- Methods -->
</div>

    </div>
  </body>
</html>
